1. Field of the Invention
The present invention relates generally to methods of controlling and maintaining electronic equipment, and more particularly to devices such as multifunction peripherals which have advanced processing, status monitoring and configuration capabilities.
2. Description of Related Art
In a typical networked multi-user computer environment, a number of individual workstations are linked together through a network, usually a local area network (LAN). Also linked on the LAN are one or more peripheral devices such as printers, facsimile machines, scanners or plotters. One or more file servers are also linked to the network and serve to manage allocation of the devices to workstations which request the use of the devices. The allocation procedures typically involve accepting requests, determining the address of the device requested, maintaining queues, establishing priorities and relaying data from the workstation to the device.
Typically when a workstation user wishes to determine the status of a device that is networked on a LAN, the method available depends upon the intelligence of the device. The earlier generation of peripherals were "unintelligent," or perhaps, better "uncommunicative." They accepted data from the LAN and processed it according to instructions, but were incapable of relaying conditions back to the LAN. A workstation user, concerned about the status of a device to which he or she had sent a job, would have to leave the workstation to physically examine the device.
A server, such as a file server or a print server, might be able to provide some information regarding the status of a print job. However, this conditions related to the status of the print job in a print queue, and the print queue was neither created, maintained nor serviced by the printer. If a print job was removed from the print queue, one could infer that the printer was handling the print job. However, the status of the print job as it was handled by the printer could not be ascertained. For example, absence of a print job from the print queue could mean that the print job was complete, or it could also mean that the printer had received the print job into its buffer and was still processing the print job. Other features of such a print queue manager were reprioritization of print jobs and deletion of print jobs.
More recently, peripheral devices such as printers have become available which are able to determine and relay information concerning their status through a communications port, such as a network interface card (NIC) or a printer (LPT) port. Thus, information concerning the printer such as its device information (the manufacturer, command set and model of printer), the identity of the job it was currently processing, the status of its paper bins, ink supply, etc. which might be displayed on the printer's display panel, might be also relayed to a computer linked to the peripheral devices through a communications link. An example of this is the Lexmark Optra printer which provides identification data as well as other information as to status. However, querying the device and performing status checks slows the performance of the printer. Furthermore, these systems either provide too much or too little control over the printer.
More recently, peripheral devices have become available which are able to perform a number of related functions. These devices are known as multifunction peripherals (MFPs).
The Telecommunication Industry Association (TIA) has provided an MFP interface standard known as the IS-650 Multifunction Peripheral Industry Interface Standard, Level 1 (MFPI-1) specification version 5.5. According to this standard, an MFP is:
Computer equipment used to scan, print, facsimile transmit, and/or copy documents. It also may have the capability to provide data modem and other voice telephony services. The MFP may be an integrated unit or may be several discrete units that are interconnected on the same communication channel to the Host or interconnected using several different channels. One or more of the subsystems may be omitted from the MFP.
A "Host" as defined in MFPI- 1 is any terminal or computer capable of providing commands and data to operate a peripheral, and in practice is a computer of any size, or a group of network nodes on a given local area network. As used herein, a "host" is a generic Host, providing the quality of functionality specified in MFPI- 1 without necessarily adhering to the specification. A "subsystem" according to MFPI- 1 is one of several logical peripheral units, such as printer, scanner, fax-data-voice (FDV) modem, internal memory, stand-alone controller (SAC), operator console and others which may exist in the MFP or Host. The Host and the MFP communicate through a "channel."
An MFP can operate in stand-alone mode, wherein two or more subsystems are used without interaction with the Host. One example of this is copying. Stand-alone operations may occur at the same time that the Host is accessing a different subsystem for a Host-controlled operation.
In a networked system where many workstations are sharing peripherals, the use of a multifunction peripheral is a mixed blessing. On the one hand, rather than providing, for example, two different scanner functions (one for reading documents for facsimile transmission, one for reading documents for copying) and three different printing functions (one for printing computer generated documents, one for printing documents received through facsimile transmission, and one for printing documents that have been scanned in for copying), a single scanning function and a single printing function perform the work of printer, copier and facsimile machine. On the other hand, the single multifunction peripheral is used at least as often as all of the individual devices would have been used alone. Previously, where there was one user wishing to print a document, one user wishing to transmit a document via facsimile, and one user wishing to copy a document, each would ordinarily each have directed his or her task to a separate machine, and thus not interfere with one another. If any one of these devices was inoperable, the others could perform unimpeded. With a single machine performing all three functions (in our example), maintenance and prompt repairs are more important to ensuring the productivity enhancing capabilities and cost savings of the MFPs.
It is important in the operation of complex electronic equipment, such as MFPs, to maintain the efficiency and productivity of the machine. Machine downtime due to various conditions such as break-downs, malfunctions and errors due to normal wear and tear severely impact machine productivity. In addition, locations with multiple machine operations are often without an immediately available repair and maintenance technician. The machine may be in a geographically remote location, or a responsible technician may be working on another machine. It is important for efficiency to reduce machine down time and to improve the efficiency of technician time spent in monitoring and correcting the machine operation at a specific location.
Given a complex peripheral such as a high volume printer or multifunction peripheral which is attached to a network, a problem arises in controlling the device. One complication is that there are multiple types of users who access the peripheral. In general, users of a peripheral and technicians who need to check the condition of and maintain a peripheral access the peripheral in different ways. Typically, the user has a workstation which can send jobs to the peripheral and receive information regarding the status of the jobs, as error notices regarding things such as paper jams and empty paper trays. Typically, the technician has special equipment which are attached through special ports on the peripheral which permit the technician to obtain the peripheral's settings, diagnose low-level performance problems, and adjust various configurable settings. It can be seen that users and technicians are differentiated simply based upon their physical mode of access to the peripheral.
There generally has been now way, however, to differentiate the level of control and type of status information obtainable by various types of users of a peripheral. Although contemporary network operating systems may restrict access rights of a user or class of users to a peripheral, they do not permit varying levels of access.